home *** CD-ROM | disk | FTP | other *** search
/ Gekikoh Dennoh Club 1 / Gekikoh Dennoh Club Vol. 1 (Japan).7z / Gekikoh Dennoh Club Vol. 1 (Japan) (Track 1).bin / tools / xb / variable.h < prev    next >
Text File  |  1995-06-02  |  5KB  |  228 lines

  1. 変数個数    equ    $20        * 2^5
  2. 変数SIZE    equ    $1000
  3. nest_workSIZE    equ    $2000
  4. * 関数bufSIZE    equ    $10*512
  5. 関数listSIZE    equ    4*64        * 関数ファイルの個数上限 64
  6. strbufSIZE    equ    $2000
  7. CbufSIZE    equ    $100        * 2^8
  8.  
  9.     .offset 0
  10. _変数int:    .ds.l    2
  11. _変数str:    .ds.l    2
  12. _変数char:    .ds.l    2
  13. _変数float:    .ds.l    2
  14. _配列:        .ds.l    2
  15.  
  16. _AUTOint:    .ds.l    2
  17. _AUTOstr:    .ds.l    2
  18. _AUTOchar:    .ds.l    2
  19. _AUTOfloat:    .ds.l    2
  20. _AUTO配列:    .ds.l    2
  21.  
  22. _is_hash:    .ds.b    256
  23.  
  24. _名前:        .ds.l    2
  25. _行番号:    .ds.l    3
  26. _ラベル:    .ds.l    3
  27. _goto飛先:    .ds.l    3
  28. _変数INIT:    .ds.l    3
  29. _引数INIT:    .ds.l    3
  30. _b_argc:    .ds.l    1
  31. _b_argv:    .ds.l    1
  32.  
  33. _SPinit:    .ds.l    1
  34. _program_area:    .ds.l    1
  35. _中間言語:    .ds.l    1
  36. _変数area:    .ds.l    1
  37. _mem_last:    .ds.l    1
  38. _command_line:    .ds.l    1
  39. _MEM1:        .ds.l    1
  40. _MEM2:        .ds.l    1
  41.  
  42. _関数list:    .ds.l    1
  43. _関数buf:    .ds.l    1
  44. _内部関数buf:    .ds.l    1
  45. _内部関数para:    .ds.l    1
  46.  
  47. _nest_work:    .ds.l    1
  48. _strbuf:    .ds.l    1
  49.  
  50. _errorno:    .ds.l    1
  51. _行数:        .ds.l    1
  52. _中間言語行数:    .ds.l    4
  53. _EXTENDmask:    .ds.l    2
  54.  
  55. _関数file数:    .ds.w    1
  56. _関数個数:    .ds.w    1
  57. _内部関数個数:    .ds.w    1
  58.  
  59. _sinitASK:    .ds.w    1
  60. _sinitFLAG:    .ds.b    1    * bit 7:screen/console/width
  61.     .even            * bit 6:color []
  62. _RETURNtype:    .ds.w    1
  63. _breakcheck:    .ds.w    1
  64. _EXITcode:    .ds.w    1
  65. _fkeyflag:    .ds.w    1
  66. _FREEMEM:    .ds.w    1
  67. _tagFP:        .ds.w    1
  68. _scroll開始行:    .ds.w    1
  69. _global_flag:    .ds.b    1
  70.         .even
  71.  
  72. _system変数:    .ds.b    8*8
  73. _標準functable:    .ds.w    $100*2
  74. _外部functable:    .ds.w    $100*2
  75. _起動dir:    .ds.b    $100
  76. _tmp:        .ds.b    $200
  77. _b_initbuf:    .ds.b    712
  78. _basic_filename: .ds.b    $100
  79. _cnf_filename:    .ds.b    $100
  80. _tag_filename:    .ds.b    $100
  81. _ed_filename:    .ds.b    $100
  82. _strtok_work:    .ds.w    1
  83. _strtok_buf:    .ds.b    $100
  84.         .ds.b    $100
  85. _SP上限:    .ds.b    $8000
  86. _WORK:
  87.  
  88.  
  89.  
  90. 関数list    reg    _関数list(a6)
  91. 関数buf        reg    _関数buf(a6)
  92. 関数file数    reg    _関数file数(a6)
  93. 関数個数    reg    _関数個数(a6)
  94. 内部関数buf    reg    _内部関数buf(a6)
  95. 内部関数para    reg    _内部関数para(a6)
  96. 内部関数個数    reg    _内部関数個数(a6)
  97.  
  98. 変数int        reg    _変数int(a6)
  99. 変数str        reg    _変数str(a6)
  100. 変数char    reg    _変数char(a6)
  101. 変数float    reg    _変数float(a6)
  102. 配列        reg    _配列(a6)
  103.  
  104. AUTOint        reg    _AUTOint(a6)
  105. AUTOstr        reg    _AUTOstr(a6)
  106. AUTOchar    reg    _AUTOchar(a6)
  107. AUTOfloat    reg    _AUTOfloat(a6)
  108. AUTO配列    reg    _AUTO配列(a6)
  109. RETURNtype    reg    _RETURNtype(a6)
  110.  
  111. 名前        reg    _名前(a6)
  112. 行番号        reg    _行番号(a6)
  113. ラベル        reg    _ラベル(a6)
  114. goto飛先    reg    _goto飛先(a6)
  115. 変数INIT    reg    _変数INIT(a6)
  116. 引数INIT    reg    _引数INIT(a6)
  117. b_argc        reg    _b_argc(a6)
  118. b_argv        reg    _b_argv(a6)
  119.  
  120. SPinit        reg    _SPinit(a6)
  121. breakcheck    reg    _breakcheck(a6)
  122. EXITcode    reg    _EXITcode(a6)
  123. program_area    reg    _program_area(a6)
  124. 中間言語    reg    _中間言語(a6)
  125. 変数area    reg    _変数area(a6)
  126. command_line    reg    _command_line(a6)
  127. MEM1        reg    _MEM1(a6)
  128. MEM2        reg    _MEM2(a6)
  129.  
  130. errorno        reg    _errorno(a6)
  131. 行数        reg    _行数(a6)
  132. 中間言語行数    reg    _中間言語行数(a6)
  133. mem_last    reg    _mem_last(a6)
  134. nest_work    reg    _nest_work(a6)
  135. fkeyflag    reg    _fkeyflag(a6)
  136. sinitASK    reg    _sinitASK(a6)
  137. sinitFLAG    reg    _sinitFLAG(a6)
  138. tagFP        reg    _tagFP(a6)
  139. scroll開始行    reg    _scroll開始行(a6)
  140. global_flag    reg    _global_flag(a6)
  141. EXTENDmask    reg    _EXTENDmask(a6)
  142.  
  143. system変数    reg    _system変数(a6)
  144. 標準functable    reg    _標準functable(a6)
  145. 外部functable    reg    _外部functable(a6)
  146. 起動dir        reg    _起動dir(a6)
  147. tmp        reg    _tmp(a6)        * その場限り
  148. strbuf        reg    _strbuf(a6)
  149. b_initbuf    reg    _b_initbuf(a6)
  150. basic_filename    reg    _basic_filename(a6)
  151. cnf_filename    reg    _cnf_filename(a6)
  152. tag_filename    reg    _tag_filename(a6)
  153. ed_filename    reg    _ed_filename(a6)
  154.  
  155.  * 標準関数用
  156. strtok_work    reg    _strtok_work(a6)
  157. strtok_buf    reg    _strtok_buf(a6)
  158.  
  159.  
  160.  
  161.  * 外部関数 infomation table
  162.     .offset    0
  163. Finit:        .ds.l    1
  164. Frun:        .ds.l    1
  165. Fend:        .ds.l    1
  166. Fexit:        .ds.l    1
  167. Fbreak:        .ds.l    1
  168. FctrlD:        .ds.l    3
  169. Ftokun:        .ds.l    1
  170. Fpara:        .ds.l    1
  171. Fexec:        .ds.l    1
  172.         .ds.l    5    * 予備
  173.  
  174.  
  175.  
  176. ERROR    .macro    num
  177.     moveq    #num,d0
  178.     bra    error
  179.     .endm
  180.  
  181. ERRORS    .macro    num
  182.     moveq    #num,d0
  183.     bra    errors
  184.     .endm
  185.  
  186. WARN    .macro    num
  187.     move.l    d0,-(sp)
  188.     moveq    #num,d0
  189.     bsr    warning
  190.     move.l    (sp)+,d0
  191.     .endm
  192.  
  193. WARNS    .macro    num
  194.     move.l    d0,-(sp)
  195.     moveq    #num,d0
  196.     bsr    warnings
  197.     move.l    (sp)+,d0
  198.     .endm
  199.  
  200.  
  201.  * 拡張機能のフラグ
  202. b_argF        equ    30        * 0 = なし, 1 = あり
  203. fnc_dimF    equ    29        * 1 = 関数の引き数に配列許す
  204. v_initF        equ    28        * 1 = 関数呼び出しごとに変数初期化しない
  205. labelF        equ    27        * 1 = goto ラベルを使用出来る
  206. breakoffF    equ    26        * 1 = BREAK(CTRL+C) 無効
  207. len_dimF    equ    25        * 1 = 可変長配列使えるよ
  208.  
  209. * コンフィグ・コンパイラ共通のフラグ
  210. no_cnfF        equ    8        * 0 = .cnf , 1 = .bas
  211. fnckeyF        equ    16        * 0 = ファンクションキー書き替える
  212. fncautoF    equ    17        * 1 = ファンクションキーAUTO
  213. fncwarnF    equ    18        * 1 = WARNING 出た
  214.  
  215. * コンパイラ・インタプリタ共通のフラグ
  216. modeF        equ    7        * 0 = global , 1 = auto
  217.  
  218. * コンパイラのフラグ
  219. endfuncF    equ    6        * 1 = endfunc後
  220. warningF    equ    5        * 1 = ワーニング出た
  221. warnoffF    equ    4        * 1 = ワーニングOFF
  222. linenumF    equ    3        * 1 = 行番号あり
  223.  
  224. * インタプリタのフラグ
  225. cursorF        equ    0        * 0 = cursor OFF, 1 = ON
  226. errorF        equ    1        * 0 = error on, 1 = off
  227. localF        equ    15        * local flag
  228.